package com.autumn.scheduler.api.job;

/**
 * 触发器信息
 * 
 * @author 老码农 2018-03-21 01:14:08
 */
public interface IJobTriggerBuilderInfo {

	/**
	 * 获取触发器信息
	 * 
	 * @return
	 */
	String getTriggerType();

	/**
	 * 设置触发器信息
	 * 
	 * @param triggerType
	 */
	void setTriggerType(String triggerType);

	/**
	 * 获取时间间隔
	 * 
	 * @return
	 *
	 */
	Integer getTimeInterval();

	/**
	 * 设置时间间隔
	 * 
	 * @param timeInterval
	 *            时间间隔
	 *
	 */
	void setTimeInterval(Integer timeInterval);

	/**
	 * 获取时间单位
	 * 
	 * @return {@link com.autumn.scheduler.api.constant.core.JobConstants.JobIntervalUnit}
	 *
	 */
	String getTimeIntervalUnit();

	/**
	 * 设置时间单位
	 * 
	 * @param timeIntervalUnit
	 *            {@link com.autumn.scheduler.api.constant.core.JobConstants.JobIntervalUnit}
	 *
	 */
	void setTimeIntervalUnit(String timeIntervalUnit);

	/**
	 * 获取 Cron 表达式
	 * 
	 * @return
	 *
	 */
	String getCronExpression();

	/**
	 * 设置 Cron 表达式
	 * 
	 * @param cronExpression
	 *            Cron 表达式
	 *
	 */
	void setCronExpression(String cronExpression);

}
